package pers.xiaojun.boot.file.core.client;

import lombok.AllArgsConstructor;
import lombok.Data;

/**
 * 文件客户端抽象类
 *
 * @author xiaojun
 * @since 2025-11-13
 */
@Data
@AllArgsConstructor
public abstract class AbstractFileClient<Config extends FileClientConfig> implements FileClient {

    /**
     * 客户端Id
     */
    private final Long id;

    /**
     * 客户端配置
     */
    protected Config config;

    /**
     * 初始化方法。由子类完成
     *
     */
    abstract public void init();


    @Override
    public Long getId() {
        return id;
    }
}
